package com.cby.android.base.accessibility

import android.accessibilityservice.AccessibilityService
import android.os.Build
import android.util.Log
import android.view.accessibility.AccessibilityEvent
import androidx.annotation.RequiresApi
import com.cby.util.lib.util.CbyLogUtils
import kotlin.concurrent.thread

/**
 * @description: 辅助功能
 * @author: ChenBaoYang
 * @createDate: 2022/7/20 4:38 下午
 */
class MyAccessibilityService : AccessibilityService() {

    @RequiresApi(Build.VERSION_CODES.N)
    override fun onServiceConnected() {
        super.onServiceConnected()
        CbyLogUtils.flog("chenby", "onServiceConnected")
        thread {
            // 当前的点击事件，不限制于当前应用，是全局的，模拟点击，当前指定的位置
            Thread.sleep(8000)
            ClickUtils.click(this, 600f, 434f)
        }
    }

    /**
     * onAccessibilityEvent 方法中，带有一个参数 AccessibilityEvent，
     * 当界面发生改变时，这个方法就会被调用，界面改变的具体信息就会包含在这个参数中
     */
    override fun onAccessibilityEvent(event: AccessibilityEvent?) {
        CbyLogUtils.flog(event.toString())
    }

    /**
     * 辅助服务被中断了
     */
    override fun onInterrupt() {
        CbyLogUtils.flog("onInterrupt")
    }
}